package com.itheima.controller;

import com.itheima.domian.entity.User;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;

import java.util.Date;

@RestController
public class UserController {
    @Value("${server.port}")
    private String port;

    /**
     * 业务：根据用户ID查询用户信息
     * 定义http接口：
     * 1.请求方式
     * 2.请求路径
     * 3.请求参数
     * 4.响应结果
     */
    @GetMapping("/user/{id}")
    public User queryUserById(@PathVariable Long id) {
        //Thread.sleep(2000);
        System.out.println("调用了：" + port + "端口服务");
        User user = new User();
        user.setId(id);
        user.setName("from" + port + " jack");
        user.setAge(18);
        user.setUpdateTime(new Date());
        return user;
    }

    /**
     * 测试 局部过滤器
     * 1.经过网关转发调用改接口 返回值应该是 admin
     * 2.绕过网关 直接请求该接口 返回值应该 null
     * @param name
     * @return
     */
    @GetMapping("/user")
    public String queryUserByName(@RequestParam(value = "name", required = false) String name){
        return name;
    }
}
